6 research outputs found

    Modelling and analysing software in mCRL2

    Get PDF
    Model checking is an effective way to design correct software.Making behavioural models of software, formulating correctness properties using modal formulas, and verifying these using finite state analysis techniques, is a very efficient way to obtain the required insight in the software. We illustrate this on four common but tricky examples

    Analysing the Control Software of the Compact Muon Solenoid Experiment at the Large Hadron Collider

    Full text link
    The control software of the CERN Compact Muon Solenoid experiment contains over 30,000 finite state machines. These state machines are organised hierarchically: commands are sent down the hierarchy and state changes are sent upwards. The sheer size of the system makes it virtually impossible to fully understand the details of its behaviour at the macro level. This is fuelled by unclarities that already exist at the micro level. We have solved the latter problem by formally describing the finite state machines in the mCRL2 process algebra. The translation has been implemented using the ASF+SDF meta-environment, and its correctness was assessed by means of simulations and visualisations of individual finite state machines and through formal verification of subsystems of the control software. Based on the formalised semantics of the finite state machines, we have developed dedicated tooling for checking properties that can be verified on finite state machines in isolation.Comment: To appear in FSEN'11. Extended version with details of the ASF+SDF translation of SML into mCRL

    Modelling and Analysing Software in mCRL2

    No full text
    Model checking is an effective way to design correct software. Making behavioural models of software, formulating correctness properties using modal formulas, and verifying these using finite state analysis techniques, is a very efficient way to obtain the required insight in the software. We illustrate this on four common but tricky examples.</p

    Modelling and Analysing Software in mCRL2

    No full text
    Model checking is an effective way to design correct software. Making behavioural models of software, formulating correctness properties using modal formulas, and verifying these using finite state analysis techniques, is a very efficient way to obtain the required insight in the software. We illustrate this on four common but tricky examples

    An O(m log n) Algorithm for Branching Bisimilarity on Labelled Transition Systems

    No full text
    This software provides implementations of various branching bisimilarity algorithms, as present in the mCRL2 toolset, as well as a benchmark set and scripts to experimentally compare the implementations. The purpose of this artifact is to provide all resources necessary to validate the results reported in the TACAS 2020 paper "An O(m log n) Algorithm for Branching Bisimilarity on Labelled Transition Systems", by D.N. Jansen, J.-F. Groote, J.J.A. Keiren and A.J. Wijs
    corecore